/* 
 *  Copyright 2012 CodeMagi, Inc.
 * 
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */
package com.codemagi.servlets.search.beans;

import com.codemagi.login.model.IUser;
import java.io.Serializable;

/**
 * Standard implementation of the ISerchBean interface. 
 * 
 * Extend SearchBean to add custom parameters to a search, like owner, category, start date, etc.
 *
 *  @version 1.0
 *  @author August Detlefsen for CodeMagi, Inc.
 */
public class SearchBean implements Serializable, ISearchBean {

    /**
     * The actual query that was executed
     */
    private String query;
    private IUser user;
    private String sortBy;
    private Integer resultsPerPage;
    private boolean sortAscending = true;

    private String keywords;

    /**
     * The results page number
     */
    private int page = 0;


    //GETTERS AND SETTERS ---------------------------------------

    public void setQuery(String newValue) {
        query = newValue;
    }

    public String getQuery() {
        return query;
    }

    public void setUser(IUser newValue) {
        user = newValue;
    }

    public IUser getUser() {
        return user;
    }

    public void setPage(int newValue) {
        page = newValue;
    }

    public int getPage() {
        return page;
    }

    public void setSortBy(String newValue) {
	sortBy = newValue;
    }

    public String getSortBy() {
	return sortBy;
    }

    public void setResultsPerPage(int newValue) {
	resultsPerPage = newValue;
    }

    public int getResultsPerPage() {
	return resultsPerPage;
    }

    public void setSortAscending(boolean newValue) {
	sortAscending = newValue;
    }

    public boolean getSortAscending() {
	return sortAscending;
    }

    public void setKeywords(String newValue) {
        keywords = newValue;
    }

    public String getKeywords() {
        return keywords;
    }


}
